package website.digitalocean.chapter15;


/**
 * 观察主体
 *
 * @author: longhc@citycloud.com.cn
 * @since: 2023/2/15 14:45
 * @version: 1.0
 */
public interface Subject {
    /**
     * 注册一个观察者
     *
     * @param observer
     */
    void register(Observer observer);

    /**
     * 注销一个观察者
     *
     * @param observer
     */
    void unregister(Observer observer);

    /**
     * 提醒观察者
     */
    void notifyObserver();

    Object getUpdate(Observer observer);
}
